↳ Prolog
↳ PrologToPiTRSProof
e_in(L, T) → U2(L, T, t_in(L, .(plus, C)))
t_in(L, T) → U5(L, T, n_in(L, .(star, C)))
n_in(.(lbrace, A), B) → U8(A, B, e_in(A, .(rbrace, B)))
e_in(L, T) → U1(L, T, t_in(L, T))
t_in(L, T) → U4(L, T, n_in(L, T))
n_in(.(L, T), T) → U7(L, T, z_in(L))
z_in(c) → z_out(c)
z_in(b) → z_out(b)
z_in(a) → z_out(a)
U7(L, T, z_out(L)) → n_out(.(L, T), T)
U4(L, T, n_out(L, T)) → t_out(L, T)
U1(L, T, t_out(L, T)) → e_out(L, T)
U8(A, B, e_out(A, .(rbrace, B))) → n_out(.(lbrace, A), B)
U5(L, T, n_out(L, .(star, C))) → U6(L, T, t_in(C, T))
U6(L, T, t_out(C, T)) → t_out(L, T)
U2(L, T, t_out(L, .(plus, C))) → U3(L, T, e_in(C, T))
U3(L, T, e_out(C, T)) → e_out(L, T)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
e_in(L, T) → U2(L, T, t_in(L, .(plus, C)))
t_in(L, T) → U5(L, T, n_in(L, .(star, C)))
n_in(.(lbrace, A), B) → U8(A, B, e_in(A, .(rbrace, B)))
e_in(L, T) → U1(L, T, t_in(L, T))
t_in(L, T) → U4(L, T, n_in(L, T))
n_in(.(L, T), T) → U7(L, T, z_in(L))
z_in(c) → z_out(c)
z_in(b) → z_out(b)
z_in(a) → z_out(a)
U7(L, T, z_out(L)) → n_out(.(L, T), T)
U4(L, T, n_out(L, T)) → t_out(L, T)
U1(L, T, t_out(L, T)) → e_out(L, T)
U8(A, B, e_out(A, .(rbrace, B))) → n_out(.(lbrace, A), B)
U5(L, T, n_out(L, .(star, C))) → U6(L, T, t_in(C, T))
U6(L, T, t_out(C, T)) → t_out(L, T)
U2(L, T, t_out(L, .(plus, C))) → U3(L, T, e_in(C, T))
U3(L, T, e_out(C, T)) → e_out(L, T)
E_IN(L, T) → U21(L, T, t_in(L, .(plus, C)))
E_IN(L, T) → T_IN(L, .(plus, C))
T_IN(L, T) → U51(L, T, n_in(L, .(star, C)))
T_IN(L, T) → N_IN(L, .(star, C))
N_IN(.(lbrace, A), B) → U81(A, B, e_in(A, .(rbrace, B)))
N_IN(.(lbrace, A), B) → E_IN(A, .(rbrace, B))
E_IN(L, T) → U11(L, T, t_in(L, T))
E_IN(L, T) → T_IN(L, T)
T_IN(L, T) → U41(L, T, n_in(L, T))
T_IN(L, T) → N_IN(L, T)
N_IN(.(L, T), T) → U71(L, T, z_in(L))
N_IN(.(L, T), T) → Z_IN(L)
U51(L, T, n_out(L, .(star, C))) → U61(L, T, t_in(C, T))
U51(L, T, n_out(L, .(star, C))) → T_IN(C, T)
U21(L, T, t_out(L, .(plus, C))) → U31(L, T, e_in(C, T))
U21(L, T, t_out(L, .(plus, C))) → E_IN(C, T)
e_in(L, T) → U2(L, T, t_in(L, .(plus, C)))
t_in(L, T) → U5(L, T, n_in(L, .(star, C)))
n_in(.(lbrace, A), B) → U8(A, B, e_in(A, .(rbrace, B)))
e_in(L, T) → U1(L, T, t_in(L, T))
t_in(L, T) → U4(L, T, n_in(L, T))
n_in(.(L, T), T) → U7(L, T, z_in(L))
z_in(c) → z_out(c)
z_in(b) → z_out(b)
z_in(a) → z_out(a)
U7(L, T, z_out(L)) → n_out(.(L, T), T)
U4(L, T, n_out(L, T)) → t_out(L, T)
U1(L, T, t_out(L, T)) → e_out(L, T)
U8(A, B, e_out(A, .(rbrace, B))) → n_out(.(lbrace, A), B)
U5(L, T, n_out(L, .(star, C))) → U6(L, T, t_in(C, T))
U6(L, T, t_out(C, T)) → t_out(L, T)
U2(L, T, t_out(L, .(plus, C))) → U3(L, T, e_in(C, T))
U3(L, T, e_out(C, T)) → e_out(L, T)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
E_IN(L, T) → U21(L, T, t_in(L, .(plus, C)))
E_IN(L, T) → T_IN(L, .(plus, C))
T_IN(L, T) → U51(L, T, n_in(L, .(star, C)))
T_IN(L, T) → N_IN(L, .(star, C))
N_IN(.(lbrace, A), B) → U81(A, B, e_in(A, .(rbrace, B)))
N_IN(.(lbrace, A), B) → E_IN(A, .(rbrace, B))
E_IN(L, T) → U11(L, T, t_in(L, T))
E_IN(L, T) → T_IN(L, T)
T_IN(L, T) → U41(L, T, n_in(L, T))
T_IN(L, T) → N_IN(L, T)
N_IN(.(L, T), T) → U71(L, T, z_in(L))
N_IN(.(L, T), T) → Z_IN(L)
U51(L, T, n_out(L, .(star, C))) → U61(L, T, t_in(C, T))
U51(L, T, n_out(L, .(star, C))) → T_IN(C, T)
U21(L, T, t_out(L, .(plus, C))) → U31(L, T, e_in(C, T))
U21(L, T, t_out(L, .(plus, C))) → E_IN(C, T)
e_in(L, T) → U2(L, T, t_in(L, .(plus, C)))
t_in(L, T) → U5(L, T, n_in(L, .(star, C)))
n_in(.(lbrace, A), B) → U8(A, B, e_in(A, .(rbrace, B)))
e_in(L, T) → U1(L, T, t_in(L, T))
t_in(L, T) → U4(L, T, n_in(L, T))
n_in(.(L, T), T) → U7(L, T, z_in(L))
z_in(c) → z_out(c)
z_in(b) → z_out(b)
z_in(a) → z_out(a)
U7(L, T, z_out(L)) → n_out(.(L, T), T)
U4(L, T, n_out(L, T)) → t_out(L, T)
U1(L, T, t_out(L, T)) → e_out(L, T)
U8(A, B, e_out(A, .(rbrace, B))) → n_out(.(lbrace, A), B)
U5(L, T, n_out(L, .(star, C))) → U6(L, T, t_in(C, T))
U6(L, T, t_out(C, T)) → t_out(L, T)
U2(L, T, t_out(L, .(plus, C))) → U3(L, T, e_in(C, T))
U3(L, T, e_out(C, T)) → e_out(L, T)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ PiDPToQDPProof
U21(L, T, t_out(L, .(plus, C))) → E_IN(C, T)
T_IN(L, T) → N_IN(L, T)
T_IN(L, T) → N_IN(L, .(star, C))
N_IN(.(lbrace, A), B) → E_IN(A, .(rbrace, B))
E_IN(L, T) → T_IN(L, .(plus, C))
E_IN(L, T) → U21(L, T, t_in(L, .(plus, C)))
E_IN(L, T) → T_IN(L, T)
U51(L, T, n_out(L, .(star, C))) → T_IN(C, T)
T_IN(L, T) → U51(L, T, n_in(L, .(star, C)))
e_in(L, T) → U2(L, T, t_in(L, .(plus, C)))
t_in(L, T) → U5(L, T, n_in(L, .(star, C)))
n_in(.(lbrace, A), B) → U8(A, B, e_in(A, .(rbrace, B)))
e_in(L, T) → U1(L, T, t_in(L, T))
t_in(L, T) → U4(L, T, n_in(L, T))
n_in(.(L, T), T) → U7(L, T, z_in(L))
z_in(c) → z_out(c)
z_in(b) → z_out(b)
z_in(a) → z_out(a)
U7(L, T, z_out(L)) → n_out(.(L, T), T)
U4(L, T, n_out(L, T)) → t_out(L, T)
U1(L, T, t_out(L, T)) → e_out(L, T)
U8(A, B, e_out(A, .(rbrace, B))) → n_out(.(lbrace, A), B)
U5(L, T, n_out(L, .(star, C))) → U6(L, T, t_in(C, T))
U6(L, T, t_out(C, T)) → t_out(L, T)
U2(L, T, t_out(L, .(plus, C))) → U3(L, T, e_in(C, T))
U3(L, T, e_out(C, T)) → e_out(L, T)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
U51(n_out(.(star, C))) → T_IN(C)
T_IN(L) → U51(n_in(L))
N_IN(.(lbrace, A)) → E_IN(A)
T_IN(L) → N_IN(L)
E_IN(L) → U21(t_in(L))
U21(t_out(.(plus, C))) → E_IN(C)
E_IN(L) → T_IN(L)
e_in(L) → U2(t_in(L))
t_in(L) → U5(n_in(L))
n_in(.(lbrace, A)) → U8(e_in(A))
e_in(L) → U1(t_in(L))
t_in(L) → U4(n_in(L))
n_in(.(L, T)) → U7(T, z_in(L))
z_in(c) → z_out
z_in(b) → z_out
z_in(a) → z_out
U7(T, z_out) → n_out(T)
U4(n_out(T)) → t_out(T)
U1(t_out(T)) → e_out(T)
U8(e_out(.(rbrace, B))) → n_out(B)
U5(n_out(.(star, C))) → U6(t_in(C))
U6(t_out(T)) → t_out(T)
U2(t_out(.(plus, C))) → U3(e_in(C))
U3(e_out(T)) → e_out(T)
e_in(x0)
t_in(x0)
n_in(x0)
z_in(x0)
U7(x0, x1)
U4(x0)
U1(x0)
U8(x0)
U5(x0)
U6(x0)
U2(x0)
U3(x0)
The following rules are removed from R:
U51(n_out(.(star, C))) → T_IN(C)
T_IN(L) → U51(n_in(L))
N_IN(.(lbrace, A)) → E_IN(A)
T_IN(L) → N_IN(L)
E_IN(L) → U21(t_in(L))
U21(t_out(.(plus, C))) → E_IN(C)
Used ordering: POLO with Polynomial interpretation [25]:
n_in(.(lbrace, A)) → U8(e_in(A))
n_in(.(L, T)) → U7(T, z_in(L))
z_in(c) → z_out
z_in(b) → z_out
z_in(a) → z_out
U7(T, z_out) → n_out(T)
U8(e_out(.(rbrace, B))) → n_out(B)
U2(t_out(.(plus, C))) → U3(e_in(C))
U3(e_out(T)) → e_out(T)
U5(n_out(.(star, C))) → U6(t_in(C))
U6(t_out(T)) → t_out(T)
POL(.(x1, x2)) = 2·x1 + 2·x2
POL(E_IN(x1)) = 2 + 2·x1
POL(N_IN(x1)) = x1
POL(T_IN(x1)) = 2 + 2·x1
POL(U1(x1)) = x1
POL(U2(x1)) = x1
POL(U21(x1)) = x1
POL(U3(x1)) = 1 + x1
POL(U4(x1)) = x1
POL(U5(x1)) = x1
POL(U51(x1)) = 1 + x1
POL(U6(x1)) = 2 + x1
POL(U7(x1, x2)) = 2·x1 + x2
POL(U8(x1)) = x1
POL(a) = 2
POL(b) = 2
POL(c) = 1
POL(e_in(x1)) = 2·x1
POL(e_out(x1)) = x1
POL(lbrace) = 1
POL(n_in(x1)) = 2·x1
POL(n_out(x1)) = x1
POL(plus) = 2
POL(rbrace) = 0
POL(star) = 2
POL(t_in(x1)) = 2·x1
POL(t_out(x1)) = x1
POL(z_in(x1)) = 2·x1
POL(z_out) = 2
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ QDP
↳ DependencyGraphProof
E_IN(L) → T_IN(L)
t_in(L) → U5(n_in(L))
t_in(L) → U4(n_in(L))
U4(n_out(T)) → t_out(T)
e_in(L) → U2(t_in(L))
e_in(L) → U1(t_in(L))
U1(t_out(T)) → e_out(T)
e_in(x0)
t_in(x0)
n_in(x0)
z_in(x0)
U7(x0, x1)
U4(x0)
U1(x0)
U8(x0)
U5(x0)
U6(x0)
U2(x0)
U3(x0)